/**
 *选择分类
 */
var level=1;
/**
 * 删除多余项
 * lev：当前所点击的层级数
 * @returns
 */
var removeOthers = function(lev){
  $("#categories").find("select").each(function(i){
    var isRemove = false;
    if(lev){//当前点击的层级有子分类
      if(i > lev){
        isRemove = true;
      }
    }else{//当前点击的层级无子分类
      if(i >= level - 1){
        isRemove = true;
      }
    }
    
    if(isRemove)
      $(this).remove();
  });
};

var showCategories = function(cates){
  if(cates){
    var len = cates.length;
    if(len > 0){
      //获取第level级的select元素
      var selhtml = $("#categories").find("select")[level-1];
      
      //第level级的select已经存在则将其清空，否则生成相应的select元素
      if(selhtml){
        $(selhtml).empty();
      }else{
        selhtml = $("<select class=\"am-u-sm-3 am-u-md-3 am-margin-top am-margin-right\" style=\"width:23%;height:25rem;\" id=\"cate"+level+"\" multiple></select>");
        $("#categories #split").before(selhtml);
        //selhtml.appendTo($("#categories"));
      }
      //生成第level级的option元素
      for(var i = 0;i < len;i++){
        var cate = cates[i];
        var opthtml = $("<option class=\"am-text-sm\" onclick=\"getCategories('" + cate.level + "','" + cate.id + "','" + cate.name + "','"+cate.attr_set_id+"')\">" + cate.name + "</option>");
        opthtml.appendTo(selhtml);
      }
    }else{
      removeOthers();
    }
  }else{
    removeOthers();
  }
};

/**
 *获取面包屑内容 
 */
var getBreadCrumbHtml = function(lev,catename){
    var lihtml = "";
    if(lev == 1)
        lihtml = '<span class="am-margin-right am-text-sm" style="font-weight:bold;">所属分类：</span>'+catename;
    else
        lihtml = catename;
        
    return lihtml;
}

/**
 *设置面包屑 
 */
var setBreadCrumb = function(lev,catename){
    var bdcb = $("#breadcrumb").find("li")[lev-1];
    if(bdcb){
        $("#breadcrumb").find("li").each(function(i){
            //更改当前选中面包屑的内容
            if(i == lev - 1){
                var lihtml = getBreadCrumbHtml(lev,catename);
                $(this).html(lihtml);
            }
            //删除当前选中面包屑之后的项
            if(i >= lev){
                $(this).remove();
            }
        });
    }else{//新增面包屑项
        var linode = $("<li id=\"bdcb"+lev+"\"></li>");
        var lihtml = getBreadCrumbHtml(lev,catename);
        linode.html(lihtml);
        linode.appendTo($("#breadcrumb"));
    }
};

var getCategories = function(lev,parentid,catename,asetid){
  if(asetid != 0){//无子分类
      attrsetid = asetid;//获取该分类下的sku时使用
    $("#categoryId").val(parentid);
    $("#confirm-btn").removeClass("am-disabled");
  }else{//有子分类
    $("#categoryId").val("");
    $("#confirm-btn").addClass("am-disabled");
    //删除多余子分类
    removeOthers(Number(lev));
  }
  
  // 设置面包屑
  setBreadCrumb(Number(lev),catename);
  
  //将需要显示的分类层级数用当前所点击的option所在的层级数+1来表示
  level = Number(lev) + 1;
  
  //加载子分类
  loadCategories(parentid);
};

var loadCategories = function(parentid){
	if(!parentid)
		parentid = "0";
	var option = {
		prntid : parentid
	};
	$.ajax({
    url : base + "/category/getcatebyprntid",
    dataType : "json", 
    type : "post", 
    data : option,
    success : function(data){
      console.log(data);
      showCategories(data);
    },
    error : function(msg) { // 若Ajax处理失败后回调函数，msg是返回的错误信息
      console.log(msg);
    }
  });
};
